#include "Logger.h"

std::string	Logger::rutaDelLogger = "";
int Logger::linea = 0;
bool Logger::funciona = false;

Logger::Logger(const string* const mensaje) {

	if (Logger::funciona == true) {

		std::ofstream archivo;

		archivo.open(Logger::rutaDelLogger.c_str(), std::fstream::app);

		if (archivo.is_open()) {

			archivo << Logger::linea << ". " << *mensaje;

			archivo.close();

			++Logger::linea;
		}
	}
}

Logger::~Logger() {}

bool Logger::crearArchivo(const string* const ruta) {

	std::ofstream archivo;

	archivo.open(ruta->c_str(), std::fstream::trunc);

	bool resultado = archivo.is_open();

	if (resultado == true) {

		Logger::rutaDelLogger = *ruta;

		Logger::funciona = true;

		archivo.close();
	}

	return resultado;
}

/*
* Cambiar el estado del Logger.
*/
bool Logger::estadoLogger(bool func) {

	return Logger::funciona = func;
}